FIG. 1 is a diagram of a client interaction with a web server. The client 101 is a computer that is communicating with a web server 109 over a network. The client 101 is executing a browser 103. A user interacts with a browser 103 to request a web page 105. The sequence of requests and responses 111A-H is illustrated with the requests in a sequence with the first request 111A at the top of the set of requests and the last response 111H at the bottom.
The web browser 103 generates a request 111A for a web page 105. The request 111A is sent to the web server 109 that provides the web page 105. The web server 109 responds to the request 111A by retrieving the web page 105 from a storage location and returning the web page 105 in a response 111B. The web browser 103 then interprets the web page 105 to determine each element of the web page 105 that must be requested from the web server 109 to complete the web page 105 for display to the user. The example web page 105 includes an image 107A and two frames 107B, C.
The web browser 103 generates a request for each embedded item found while interpreting the received web page 105. In the example, the image 107A is found first and a request 111C is sent to the web server 109 to obtain the image 107A. The web server 109 receives the request 111C and retrieves the image 107A from a storage location and generates a response 111D to provide the image 107A to the client 101.
The web browser 103 continues to interpret the web page 105 and generates requests 111E, G for the two frames 107B, C. The web server 109 receives these requests 111E, G and retrieves the data requested for each frame 107B, C and generates responses 111F, H to provide this data to the browser 103.
FIG. 2 is a diagram of a system for providing web pages and related content to a client. The client 101 is a computer connected to the web server 109 over a network 207. The network is typically the Internet. The web server 109 is a dedicated server computer that executes a web server program. The web server 109 also provides a page cache 201. The page cache 201 is a part of the system memory of the web server 209 that is utilized by the web server 109 to store recently or frequently accessed data.
The web server 109 is in communication with a database 203 and a dynamic content provider 205. The web server 109 interacts with the database 203 and dynamic content provider 205 to service requests. The database 203 stores data including static web pages and multimedia. The dynamic content provider 205 is an application or set of applications that provide web pages and embedded content in web pages that changes in response to changes in input parameters. For example, a dynamic content provider may be a news feed or stock ticker embedded in a web page.
The client 101 requests each web page and embedded item separately as it receives a user input such as a uniform resource locator (URL) identifying the requested data and as it interprets a received web page that contains additional URLs for embedded content as the client attempts to render the requested web page for a user.